/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/

// import { fromNodeEventEmitter } from 'vs/base/common/event';
 import { ChannelImpl, IChannel } from 'vs/base/parts/ipc/common/ipc';
// import { Protocol } from 'vs/base/parts/ipc/common/ipc.electron';
// import { ipcRenderer } from 'electron';

export class Channel extends ChannelImpl {

}
export class ChannelManager {
	private static _channels: any = {};
	// private channelClient: ChannelClient;
	// private channelServer: ChannelServer;

	constructor() {
		// this.channelClient = new ChannelClient();
		// this.channelServer = new ChannelServer();
	}

	static getChannel<T extends IChannel>(channelName: string): T {
		return this._channels[channelName] as T;
	}

	static registerChannel(channelName: string, channel: IChannel): void {
		this._channels[channelName] = channel;
	}
}